package paint2.ui.ventanas;

import paint2.infraestructura.RepositorioDeFiguras;
import paint2.modelo.Figura;
import paint2.ui.Menu;

public class VentanaBorrar implements Ventana {

    public VentanaBorrar() {
        this.borrar(new RepositorioDeFiguras());
    }

    public void agregar(Menu menu) {
    }

    private void borrar(RepositorioDeFiguras repositorio) {
        String nombre = Dialogo.pintarDesplegable("Borrar", "Seleccione el dibujo a borrar: ", repositorio.dibujos());

        if(elNombreEsValido(nombre, repositorio)) {
            confirmacionYBorradoDe(nombre, repositorio);
        } else {
            Mensaje.mostrar("Borrar", "El dibujo " + nombre + " no existe");
        }
    }

    private boolean elNombreEsValido(String nombre, RepositorioDeFiguras repositorio) {
        return repositorio.existe(nombre);
    }

    private void confirmacionYBorradoDe(String nombre, RepositorioDeFiguras repositorio) {
        if (confirmaElBorradoDe(nombre)) {
            repositorio.borrar(nombre);
        }
    }

    private boolean confirmaElBorradoDe(String nombre) {
        return Dialogo.pintarElegible("Borrar", "Esta seguro que desea borrar " + nombre) == 1;
    }
}
